Symbolic execution systems-a review - Software Engineering Journal

نویسنده

  • David Coward
چکیده

Symbolic execution is a technique that is useful in the validation of software. It may be used to aid in the generation of test data and in program proving. As software engineering becomes more concerned with the development of tools, symbolic execution will become an important item in the toolkit. This paper gives a review of symbolic execution and its applications. A minimum set of features for a symbolic execution testing system is set out. Of the 12 systems using symbolic execution only six contain these minimum features. These six systems are compared against an ‘ideal’ system. Based on this comparison some features for a new symbolic execution testing system are outlined.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Symbolic Execution and Software Testing

We review different flavors of symbolic execution, ranging from generalized symbolic execution to dynamic symbolic execution or concolic testing. We also identify challenges to symbolic execution, such as dealing with: looping constructs, multi-threading, recursive data structures, and complex mathematical constraints, as well as scalability challenges due to the path explosion problem. We disc...

متن کامل

Symbolic Execution and Constraint Solving

This report documents the program and the outcomes of Dagstuhl Seminar 14442 “Symbolic Execution and Constraint Solving”, whose main goals were to bring together leading researchers in the fields of symbolic execution and constraint solving, foster greater communication between these two communities and exchange ideas about new research directions in these fields. There has been a veritable rev...

متن کامل

ConSUS: a light-weight program conditioner

Program conditioning consists of identifying and removing a set of statements which cannot be executed when a condition of interest holds at some point in a program. It has been applied to problems in maintenance, testing, re–use and re–engineering. Program conditioning relies upon both symbolic execution and reasoning about symbolic predicates. Automation of the process therefore requires some...

متن کامل

A Tool for Practical Reasoning about State Machine Designs

Critical systems (e.g. safety-critical and security-critical systems) need the highest levels of assurance. The eeective engineering design of critical systems still lacks easy-to-use, practical and above-all trustworthy tools which allow the exploration of possible design strategies, and support formal reasoning about their critical properties. In this paper, we describe the Veracity prototype...

متن کامل

Deconstructing Dynamic Symbolic Execution

Dynamic symbolic execution (DSE) is a well-known technique for automatically generating tests to achieve higher levels of coverage in a program. Two keys ideas of DSE are to: (1) seed symbolic execution by executing a program on an initial input; (2) using concrete values from the program execution in place of symbolic expressions whenever symbolic reasoning is hard or not desired. We describe ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004